package com.biz.primus.model.payment.enums;

import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.ToString;
import org.apache.commons.lang3.StringUtils;

/**
 * AllInPayTrxStatusCode
 *
 * @author JKLiues
 * @date 2017年11月10日
 */
@Getter
@AllArgsConstructor
@ToString
public enum AllInPayTrxStatusCode {
    /**
     * 交易成功
     */
    SUCCESS("0000"),
    /**
     * 交易超时
     */
    TIMEOUT("3045"),
    /**
     * 余额不足
     */
    BALANCE_OUT("3008"),
    /**
     * 交易失败
     */
    FAILED("3999"),
    /**
     * 交易处理中
     */
    PROCESSING("2008"),
    /**
     * 交易已撤销
     */
    CANCELED("3050");

    private String code;

    public static AllInPayTrxStatusCode valueOfCode(String code) {
        AllInPayTrxStatusCode[] values = AllInPayTrxStatusCode.values();
        for (AllInPayTrxStatusCode i : values) {
            if (StringUtils.equals(code, i.getCode())) {
                return i;
            }
        }
        return null;
    }
}